package rest

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"monoblog/common"
)

// Query参数 用对象接收
func QueryData(ctx *gin.Context) {

	userId := ctx.Param("userId") //接收path参数

	fmt.Println(">>> userId = ", userId)

	var form QueryForm

	if err := ctx.ShouldBind(&form); err != nil {
		common.Fail(ctx, "Query数据绑定失败", err)
		return
	}

	common.Success(ctx, form)
}

// Form数据 用对象接收

func FormSubmit(ctx *gin.Context) {

	userId := ctx.Param("userId") //接收path参数

	fmt.Println(">>> userId = ", userId)

	var form QueryForm

	if err := ctx.ShouldBind(&form); err != nil {
		common.Fail(ctx, "Form数据绑定失败", err)
		return
	}

	common.Success(ctx, form)
}

// Body数据 用对象接收
func BodySubmit(ctx *gin.Context) {
	userId := ctx.Param("userId") //接收path参数
	fmt.Println(">>> userId = ", userId)

	var form QueryForm

	if err := ctx.ShouldBind(&form); err != nil {
		common.Fail(ctx, "Body数据绑定失败", err)
		return
	}

	common.Success(ctx, form)

}

// 定义参数结构体

type QueryForm struct {
	Name string `form:"name" json:"name"`

	Age int `form:"age" json:"age"`
}
